package com.ruoyi;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;

import java.util.List;

/**
 * **********************
 * * Author: XiaShiLong *
 * * Date  : 2021-03-22 *
 * * Time  : 11:29      *
 * * to    : lz&xm      *
 * **********************
 * 动态解析反射类信息对象
 **/
@Data
@Builder
@AllArgsConstructor
public class DynamicClassInfo {


    /**
     * 类名
     */
    private String simpleName;

    /**
     * 类路径
     */
    private String classPath;

    /**
     * 字段数
     */
    private int fieldNumber;

    /**
     * 字段集合
     */
    private List<FieldInfo> fieldInfoList;


    /**
     * 反射类字段信息
     */
    @Data
    @Builder
    @AllArgsConstructor
    public static class FieldInfo {

        /**
         * 字段名
         */
        private String attributeName;

        /**
         * 中文字段名
         */
        private String attributeNameCh;

        /**
         * 字段类型
         */
        private String type;

        /**
         * 数据库表名
         */
        private String tableName;

        /**
         * 数据库字段名
         */
        private String tableColumnName;

        /**
         * 排序
         */
        private int sort;

        /**
         * radio 类型数据
         */
        private boolean radio;
    }
}
